/**
 * 用户相关API接口
 */
import { request } from '@/api'
import type { ApiResponse } from '@/api'
import type { PageParams, PageResponse } from '@/types/api'
import type { BlogTitle } from '@/types/blog/blogTitle'
import type { BlogDetail } from '@/types/blog/blogDetail'

// 用户登录请求参数
export interface BlogsRequest extends PageParams {
  keyword: string
}

/**
 * 用户相关API接口
 */
export const blogApi = {
  /**
   * 获取博客列表
   * @param data 请求参数
   */
  GetBlogs(data: BlogsRequest): Promise<ApiResponse<PageResponse<BlogTitle>>> {
    return request.post<PageResponse<BlogTitle>>('/blog/frontBlog/blogs', data)
  },

  /**
   * 获取博客详情
   * @param data 请求参数
   */
  GetBlogById(data: number): Promise<ApiResponse<BlogDetail>> {
    return request.get<BlogDetail>('/blog/frontBlog/blog/' + data)
  },

  /**
   * 增加浏览量
   * @param data 请求参数
   */
  AddViews(data: number): Promise<ApiResponse> {
    return request.put('/blog/frontBlog/views/' + data)
  },
}
